package path.calculator;

import static org.junit.Assert.assertEquals;

import org.junit.Test;

public class RecursivePermutationGeneratorTest {
    @Test
    public void zeroIsZero() {
        RecursivePermutationGenerator generator = new RecursivePermutationGenerator(0);
        assertEquals(0, generator.allPermutations().size());
    }

    @Test
    public void oneIsOne() {
        RecursivePermutationGenerator generator = new RecursivePermutationGenerator(1);
        assertEquals(1, generator.allPermutations().size());
    }

    @Test
    public void twoIsTwo() {
        RecursivePermutationGenerator generator = new RecursivePermutationGenerator(2);
        assertEquals(1, generator.allPermutations().size());
    }
        
    @Test
    public void threeGivesSix() {
        RecursivePermutationGenerator generator = new RecursivePermutationGenerator(3);
        assertEquals(6, generator.allPermutations().size());
    }

    @Test
    public void fourGives24() {
        RecursivePermutationGenerator generator = new RecursivePermutationGenerator(4);
        assertEquals(24, generator.allPermutations().size());
    }
}
